home *** CD-ROM | disk | FTP | other *** search
- #ifndef __EWL_IMAGE_H__
- #define __EWL_IMAGE_H__
-
- /**
- * @file ewl_image.h
- * @defgroup Ewl_Image Image: An Image Display Widget
- * Provides a widget for displaying evas loadable images, and edjes.
- *
- * @{
- */
-
- /**
- * @themekey /image/file
- * @themekey /image/group
- */
-
- enum Ewl_Image_Type
- {
- EWL_IMAGE_TYPE_NORMAL, /**< Standard image type */
- EWL_IMAGE_TYPE_EDJE /**< Edje image type */
- };
-
- typedef enum Ewl_Image_Type Ewl_Image_Type;
-
- typedef struct Ewl_Image Ewl_Image;
-
- #define EWL_IMAGE(image) ((Ewl_Image *) image)
-
- /**
- * @struct Ewl_Image
- *
- */
- struct Ewl_Image
- {
- Ewl_Widget widget;
- Ewl_Image_Type type;
- Evas_Object *image;
- char *path;
- char *key;
- char proportional;
- int ow, oh;
- double sw, sh;
- int cs;
- Evas_Coord aw, ah;
-
- struct {
- int set;
- int x, y, w, h;
- } tile;
- };
-
- Ewl_Widget *ewl_image_new(void);
- int ewl_image_init(Ewl_Image *i);
- void ewl_image_file_set(Ewl_Image *i, const char *im, const char *key);
- const char *ewl_image_file_get(Ewl_Image *i);
- void ewl_image_proportional_set(Ewl_Image *i, char p);
- void ewl_image_scale(Ewl_Image *i, double wp, double hp);
- void ewl_image_scale_to(Ewl_Image *i, int w, int h);
- void ewl_image_tile_set(Ewl_Image *i, int x, int y,
- int w, int h);
- void ewl_image_constrain_set(Ewl_Image *i, unsigned int size);
- unsigned int ewl_image_constrain_get(Ewl_Image *i);
-
- /*
- * Internally used callbacks, override at your own risk.
- */
- void ewl_image_reveal_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_obscure_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_configure_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_mouse_down_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_mouse_up_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_mouse_move_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_image_destroy_cb(Ewl_Widget *w, void *ev_data, void *user_data );
-
- /**
- * @}
- */
-
- #endif /* __EWL_IMAGE_H__ */
-